#ifndef RENDERTARGET_H
#define RENDERTARGET_H

#include "Framework/Prerequisites.h"


namespace tyro
{
	namespace Graphics
	{


		class IRenderTarget
		{
		public:
			
			IRenderTarget();
			virtual ~IRenderTarget();

			virtual IViewport* AddViewport(Camera::Camera* cam, INT_32 ZOrder = 0, FLOAT_32 left = 0.0f, FLOAT_32 top = 0.0f ,
				FLOAT_32 width = 1.0f, FLOAT_32 height = 1.0f);

			UINT_32 GetHeight(void) const;
			UINT_32 GetWidth(void) const;
			UINT_32 GetColourDepth(void) const;

			virtual void swapBuffers() = 0;

			void Update( void );

		protected:

			UINT_32	width;
			UINT_32 height;
			UINT_32 colourDepth;

			ViewportMap viewports;

		};


	}
}

#endif